Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

ТИПІЗОВАНІ ФАЙЛИ

Інформація про навчальний заклад

ВУЗ:
Національний технічний університет України Київський політехнічний інститут
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2010
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Основи програмування та алгоритмічні мови

Частина тексту файла

Міністерство освіти і науки України Національний технічний університет України “Київський політехнічний інститут” Кафедра ОТ ЗВІТ про виконання лабораторної роботи № 9.1 з дисципліни “Основи програмування та алгоритмічні мови” Тема: ТИПІЗОВАНІ ФАЙЛИ Варіант 28 Постановка задачі Заданий файл записів з полями: посада, оклад. Створити новий файл, який містить список посад у порядку зменшення їх окладів. Визначити середній посадовий оклад. Аналітичні викладки Зчитати файл у масив записів, відсортувати за окладами, визначити середній оклад, записати дані в файл. Блок-схема алгоритму розв’язання задачі   Текст програми program lab_9; uses crt; type str = string[10]; field = record prof : str; okl : word; end; mas = array[1..20] of field; fil = file of field; {створення файлу за допомогою програми} procedure create; var fin : file of field; t : field; y:char; begin Assign (fin, 'fin.txt'); rewrite (fin); repeat with t do begin Write ('Spec: ':7); readln(prof); Write ('Oklad: ':7); readln(okl); end; write(fin,t); writeln ('Eshe? (y/n)'); readln (y); until (y <> 'y') and (y <> 'Y'); close (fin); end; {зчитування файлу в масив} procedure readmas(var m:mas; var n:byte); var i:byte; fin : file of field; begin Assign (fin, 'fin.txt'); reset (fin); i := 1; while not eof(fin) do begin read(fin,m[i]); i := i + 1; end; n := i - 1; close(fin); end; {запис в файл} procedure writemas(const m:mas; n:byte); var i:byte; fout : file of field; var t:field; begin Assign (fout, 'fout.txt'); rewrite (fout); for i := 1 to n do begin t := m[i]; write(fout, t); end; close (fout); end; procedure swap(var a, b: field); var c : field; begin c := a; a := b; b := c; end; {сортування масиву} procedure sort(var m:mas; n:byte); var j, k: integer; begin For k:=1 to n-1 do for j := 1 to n-k do if m[j].okl < m[j+1].okl then swap(m[j],m[j+1]); end; {додання середнього окладу} procedure addmax(var m:mas; var n:byte); var i:byte; s:word; begin for i := 1 to n do s := s + m[i].okl; s := round (s/n); n := n + 1; with m[n] do begin prof := 'sred'; okl := s; end; end; {виведення файлу на екран} procedure out(s:string); var fout:file of field; t:field; begin assign (fout, s); reset (fout); while not eof(fout) do begin read (fout,t); writeln (t.prof:12, t.okl:7); end; close (fout); end; var m:mas; {Масив даних} n:byte; {кількість записів} y:char; begin TextColor(0); TextBackGround(7); clrscr; writeln('Sozdat fail? (y/n)'); readln(y); if (y = 'Y') or (y = 'y') then create; out('fin.txt'); writeln; readmas(m, n); sort (m, n); addmax (m, n); writemas (m, n); out('fout.txt'); readln end. Результати виконання програми / Висновок Під час виконання лабораторної роботи я вивчив особливості створення і обробки типізованих файлів. Програма працює правильно:сортує професії за окладом, додає запис про середній оклад в кінець файлу.
Антиботан аватар за замовчуванням

01.03.2013 19:03

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини